package com.zzl.study.sharding.aop.annotation;

import java.lang.annotation.*;

/**
 * @author: zhangzl
 * @date: 2022/7/16 12:20
 * @version: 1.0
 * @description: 自定义Hint分片AOP拦截注解
 */
@Target({ElementType.TYPE, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Inherited
@Documented
public @interface HintInlineAlgorithm {

    /**
     * 是否是分表策略，默认为true
     *
     * @return 是否是分表策略
     */
    boolean isTableStrategy() default true;

    /**
     * 逻辑表
     *
     * @return 逻辑表
     */
    String logicTable();

    /**
     * 分片值
     *
     * @return 分片值
     */
    String hintValue();

}
